package myjdbc;

import java.sql.*;
import java.util.ArrayList;
import java.util.List;

/**
 * @Auther: cty
 * @Date: 2020/1/21 19:31
 * @Description:  测试ORM 封装一条记录：Object[]，封装多条记录：List<Object[]>
 * @version: 1.0
 */
public class JDBC_Demo10_SORM01 {
    public static void main(String[] args) {
        Connection conn = null;
        PreparedStatement ps = null;
        ResultSet rs = null;
        List<Object[]> list= new ArrayList<Object[]>();

        try {
            //1 加载数据库驱动  2 获取数据库连接
            conn = JDBCUtil.getMysqlConn();

            //3 操作数据库
            ps = conn.prepareStatement("select empname,salary,age from emp where id>?");
            ps.setObject(1, 1);
            rs = ps.executeQuery();

            //4 处理返回数据——将返回的一条记录封装到一个Object数组
            while(rs.next()){
                Object[] objs= new Object[3];
//				System.out.println(rs.getString(1)+"--"+rs.getDouble(2)+"--"+rs.getInt(3));
                objs[0]= rs.getObject(1);
                objs[1] = rs.getObject(2);
                objs[2] = rs.getObject(3);

                list.add(objs);
            }

        } catch (SQLException e) {
            e.printStackTrace();
        }finally{
            //5 关闭连接
            JDBCUtil.close(rs, ps, conn);
        }

        //打印接收信息
        for(Object[] objs:list){
            System.out.println("姓名："+objs[0]+"\t薪水"+objs[1]+"\t年龄："+objs[2]);
        }
    }
}

/* res:
姓名：李四	薪水40000.0	年龄：4
姓名：王五	薪水50000.0	年龄：5
*/
